<?php

include('../Fonctions.php');
$date_debut = date("d/m/Y");
$year = date("Y");

$nbrTypeTravaux->execute();
$nombreTravaux = $nbrTypeTravaux->rowCount();

$nbrDocument->execute();
$nombreDocument = $nbrDocument->rowCount();

if (isset($_POST['new_ville'])) {
    $newVille = trim(htmlspecialchars(strip_tags($_POST['new_ville'])));
    $codeVille = strtoupper(substr($newVille, 0, 3));
    $ville = $bdd->query("SELECT nom_ville, code_ville FROM ville");
    while ($parcoursVille = $ville->fetch()) {
        if ($parcoursVille['nom_ville'] == $newVille) {
            echo "ville existe déjà! <br />";
            break;
        }
        $codeVille = verifCode($codeVille, $newVille, $ville);
    }
    echo $codeVille;

    $ajoutNewVille->execute(array(
        'nom_ville' => $newVille,
        'supprime_ville' => 0,
        'code_ville' => $codeVille
    ));
} 
else {
        $ville = trim(htmlspecialchars(strip_tags($_POST['ville'])));
        
    $nbrTravauxEnCours = 0;
    for($i=1;$i<=$nombreTravaux; $i++){
        ${"choixTravaux".$i} = trim(htmlspecialchars(strip_tags($_POST['choix'.$i])));
        echo ${"choixTravaux".$i} . "<br />";
        if(${"choixTravaux".$i} != ''){
            $nbrTravauxEnCours++;
            $idTravaux->execute(array(
                'nom_type_travaux' =>  ${"choixTravaux".$i}
            ));
            ${"idTypeTravaux".$nbrTravauxEnCours} = $idTravaux->fetchColumn(0);
            echo ${"idTypeTravaux".$nbrTravauxEnCours} . "<br />";
        } 
    }

    foreach ($informations_etude as $value) {
        echo $value . "<br />";
    }
    //Selection des informations pour créer l'étude
    $id = $bdd->prepare("SELECT id_toute_etude FROM etude_municipalite");
    $id_ville = $bdd->prepare("SELECT id_ville, code_ville FROM ville WHERE nom_ville = '" . $ville . "'");
    $id->execute();
    $id_toute_etude = $id->rowCount() + 1;
    $id_ville->execute();
    $id_Ville = $id_ville->fetchColumn(0);
    $id_ville->execute();
    $code_ville = $id_ville->fetchColumn(1);

    $nombre_etude_ville = $bdd->prepare("SELECT numero_etude_ville FROM etude_municipalite WHERE code_ville = '" . $code_ville . "'");
    $nombre_etude_ville->execute();
    $nombre_etude = $nombre_etude_ville->rowCount() + 1;
    $nb_etude_ville = "00" . $nombre_etude;

    $num_affaire = $code_ville . "-" . substr($year, -2) . "-" . $nb_etude_ville;

    echo "id: " . $id_toute_etude . "<br />";
    echo "numero_affaire: " . $num_affaire . "<br />";
    echo "id_ville: " . $id_Ville . "<br />";
    echo "date d&eacutemarrage: " . $date_debut . "<br />";
    echo "code_ville: " . $code_ville . "<br />";
    echo "nombre d'&eacutetude sur la ville: " . $nb_etude_ville . "<br />";

    //Récupère les rues une par une et les insert dans la base de données
    $NumNewRue = 1;
    while (isset($_POST['new_rue' . $NumNewRue])) {                  //Verifie l'existence des champs
        if ($_POST['new_rue' . $NumNewRue] == NULL) {                    //si les chjamps existe, vérifie qu'ils ne sont pas vides
            ?>
                <script langage="javascript"> alert('une ou des rues n\'ont pas etaient renseignees');
                                                window.location.href="../Creation_Etude_Municipalite.php";</script>
            <?php

        }
        $NomNewRue = trim(htmlentities(strip_tags($_POST['new_rue' . $NumNewRue])));             //Récupère l'information

        $rue_etude->execute(array(//Insert en base de données la ou les rues
            'id_etude' => $id_toute_etude,
            'rue_travaux' => $NomNewRue,
            'progression' => 0
        ));
        $NumNewRue++;
    }

    $nouvelleEtude->execute(array(                 // Insert en base de données l'étude
        'id_toute_etude' => $id_toute_etude,
        'numero_affaire' => $num_affaire,
        'id_ville' => $id_Ville,
        'date_demarrage_etude' => $date_debut,
        'code_ville' => $code_ville,
        'numero_etude_ville' => $nb_etude_ville,
        'numero_etape_termine' => 1
    ));
    
    //remplissage des types de travaux en bdd
    
    for($k=1;$k<=$nbrTravauxEnCours;$k++){
        $typesTravaux->execute(array(
            'id_etude' => $id_toute_etude,
            'id_type_travaux' => ${"idTypeTravaux".$k}
        ));
    }

    $idConcessionnaire = $bdd->prepare("SELECT id_concessionnaire FROM concessionnaire_municipalite WHERE id_type_travaux = :id_type_travaux");
    $nombreConcessionnaire = 0;
    for($i=1;$i<=$nbrTravauxEnCours; $i++){  
        $idConcessionnaire->execute(array(
            'id_type_travaux' => ${"idTypeTravaux".$i}
        ));
        ${"idConcessionnaire".$i} = $idConcessionnaire->fetchColumn(0);
        $nombreConcessionnaire++;
    }
    
    //Initialisation des concessionnaires
    for ($k = 1; $k <= $nombreConcessionnaire; $k++) {  
            $ajout_concessionnaire->execute(array(
                'id_concessionnaire' => ${"idConcessionnaire" . $k},
                'id_etude' => $id_toute_etude,
                'date_obtention_APS' => "00/00/0000",
                'date_accord_etude' => "00/00/0000",
                'date_reception_final' => "00/00/0000",
                'APS_obtenu' => 0,
                'accord_etude_obtenu' => 0,
                'reception_final_obtenue' => 0
            ));
        }
    //initialisation document
    for ($i = 1; $i <= $nombreDocument; $i++) {
        $initialisationDocuments->execute(array(
            'id_document' => $i,
            'id_etude' => $id_toute_etude,
            'diffuse' => 0,
            'date_diffusion' => "00/00/0000"
        ));
    }
}

//function

//function changeTravaux($choixTravaux) {   //Permet de transformer en 0 et en 1 les types de travaux
//    if ($choixTravaux == "on") {
//        $choixTravaux = 1;
//    } else {
//        $choixTravaux = 0;
//    }
//    return $choixTravaux;
//}

//Permet de vérifier le code de la nouvelle ville
function verifCode($code, $ville, $codeBDD) {
    $codeBDD->execute();
    while ($codeExistant = $codeBDD->fetch()) {
        if ($code == $codeExistant['code_ville']) {
            $ville = substr($ville, 0, 2) . substr($ville, 3);
            if (strlen($ville) <= 2) {
                $code = strtoupper($ville . chr(ord(substr($ville, 1)) + 1));
                $code = verifCode($code, $ville, $codeBDD);
            } else {
                if (substr($ville, 3, 1) == ' ') {
                    $ville = substr($ville, 0, 2) . substr($ville, 4);
                }
                $code = strtoupper(substr($ville, 0, 3));
                $code = verifCode($code, $ville, $codeBDD);
            }
        }
    }
    return $code;
}
?>